package id.xsis.project.blog.controller;

import id.xsis.project.blog.dao.DatabaseDao;
import id.xsis.project.blog.entity.Artikel;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
@RequestMapping(value = "master/*")
public class ArtikelController {

	@Autowired
	DatabaseDao databaseDao;
	
	//list artikel
	@RequestMapping(value="artikel/searchArtikel")
	public String listArtikel(ModelMap modelMap) {
		List<Artikel> artikel = databaseDao.listArtikel();
		modelMap.put("artikels", artikel.toArray());
		return "/master/artikel/searchArtikel";
	}
	
	
	@RequestMapping(value="artikel/artikel")
	public String listAll(ModelMap modelMap) {
		List<Artikel> artikel = databaseDao.listArtikel();
		modelMap.put("artikels", artikel.toArray());
		return "/master/artikel/artikel";
	}

	// UPDATE
	@RequestMapping(value = "artikel/detailArtikel", method = RequestMethod.POST)
	public String updateArtikel(@ModelAttribute Artikel artikel) {

		databaseDao.saveArtikel(artikel);
		return "redirect:searchArtikel";
	}

	// INSERT
	@RequestMapping(value = "artikel/insertArtikel")
	public String insertArtikel() {
		return "/master/artikel/insertArtikel";
	}

	@RequestMapping(value = "artikel/insertArtikel", method = RequestMethod.POST)
	public String saveArtikel(@ModelAttribute Artikel artikel) {

		databaseDao.saveArtikel(artikel);
		return "redirect:artikel";
	}

	// Delete
	@RequestMapping(value = "artikel/deleteArtikel")
	public String deleteArtikel(Artikel artikel) {
		databaseDao.deleteArtikel(artikel);
		return "redirect:searchArtikel";
	}

}
